package com.happok.onlineclass.usermanagement.verifycode.dto;

import com.happok.onlineclass.usermanagement.setting.dto.FunctionClassifyEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

/**
 * 接口分类                        yapi 分类文件夹
 * 功能说明
 *
 * @author : chenac
 * @module 项目名称/模块名          yapi 项目组/子项目
 * @date : 2021/10/8 13:50
 */
@Data
public class FunctionVerifyCodeDTO {
    /**
     * 电话号码，11个字符
     */
    @ApiModelProperty(value = "电话号码")
    @Pattern(regexp = "^[1]([3-9])[0-9]{9}$", message = "账号格式不正确")
    @Length(max = 11, message = "电话号码长度过长")
    private String phone;
    /**
     * 邮箱，100个字符
     */
    @ApiModelProperty(value = "邮箱")
    @Pattern(regexp = "^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$", message = "账号格式不正确")
    @Length(max = 100, message = "邮箱长度过长")
    private String email;
    /**
     * 功能分类
     * USER_REGIST 用户注册
     * USER_LOGIN 用户登录
     * FORGET_PASSWORD 忘记密码
     * RESET_PASSWORD 重置密码
     * MODIFY_ACCOUNT 修改手机号或邮箱
     * ADD_USER 添加用户
     */
    @ApiModelProperty(value = "功能分类")
    @NotNull(message = "功能分类不能为空")
    private FunctionClassifyEnum functionClassify;
}